설치 및 설정
AutoRAG를 설치하려면 pip를 사용할 수 있습니다.
pip install AutoRAG
또한, 모든 기능을 사용하려면 PyOpenSSL 및 nltk 라이브러리를 설치하는 것이 좋습니다.
pip install --upgrade pyOpenSSL
pip install nltk
python3 -c "import nltk; nltk.download('punkt_tab')"
python3 -c "import nltk; nltk.download('averaged_perceptron_tagger_eng')"
설치에 문제가 있나요? 먼저 문제 해결 페이지를 확인하세요 .
Windows 사용자를 위한 참고 사항
AutoRAG는 아직 Windows에서 완전히 지원되지 않습니다. Windows 사용자에게는 몇 가지 제약이 있습니다.
- TART, UPR, MonoT5 passage rerankers는 Windows를 지원하지 않습니다.
- Windows 환경에서는 구문 분석이 제대로 작동하지 않을 수 있습니다.
batch
설정이 1로 설정된 FlagEmbedding passage reranker를 사용할 수 없습니다. 기본batch
는 64입니다.
제약 조건으로 인해 Windows에서 AutoRAG를 실행하려면 Docker 이미지를 사용하는 것이 좋습니다.
또한 Windows 사용자의 경우 반드시 v0.3.1로 업그레이드해야 합니다.
파싱을 위한 설치 🌲
파싱을 위해서는 libmagic , tesseract , poppler 와 같은 로컬 패키지를 설치해야 합니다 . 설치 방법은 OS에 따라 다릅니다.
맥OS의 경우
brew install poppler
pip install python-poppler libmagic tesseract
이것을 설치한 후, 아래와 같이 파싱 기능이 있는 AutoRAG를 설치하면 됩니다.
pip install AutoRAG[parse]
한국어 설치 🇰🇷
한국어에 대한 선택적 종속성을 설치할 수 있습니다.
pip install AutoRAG[ko]
그리고 그 후에 konlpy
를 사용하기 위해 jdk 17을 설치해야 합니다. 그리고, jdk에 대한 환경 PATH를 설정하는 것을 기억하세요. (JAVA_HOME과 PATH)
Mac 사용자를 위한 지침은 여기 에서 확인할 수 있습니다.
OPENAI API 키 설정
LLM과 임베딩 모델을 사용하려면 OpenAI 모델을 사용하는 것이 일반적입니다. 다른 모델을 사용하려면 여기를 확인하세요.
OPENAI_API_KEY 환경 변수를 설정해야 합니다. API 키는 여기 에서 얻을 수 있습니다.
export OPENAI_API_KEY="sk-...your-api-key..."
또는 다른 방법으로, .env
파일을 사용하여 환경 변수를 설정할 수 있습니다.
pip install python-dotenv
그런 다음 루트 폴더에 다음과 같이 .env
파일을 만듭니다.
OPENAI_API_KEY=sk-...your-api-key...
그리고 AutoRAG를 실행하려고 할 때, 아래 코드를 사용하여 .env
파일을 불러오면 됩니다.
from dotenv import load_dotenv
load_dotenv()
이제 AutoRAG를 사용할 준비가 되었습니다!
소스에서 빌드하기
소스에서 AutoRAG를 빌드하려면 첫 번째 단계는 AutoRAG 리포지토리를 복제하는 것입니다.
git clone https://github.com/Marker-Inc-Korea/AutoRAG.git
그리고 AutoRAG를 편집 가능한 상태로 설치합니다.
cd AutoRAG
pip install -e .
그런 다음 테스트 및 문서 빌드를 위해 몇 가지 추가 패키지를 설치해야 합니다.
pip install -r tests/requirements.txt
pip install -r docs/requirements.txt
테스트를 위해 pytest.ini에서 환경 변수를 설정해야 합니다.
프로젝트의 루트에 새 pytest.ini
파일을 만들고 아래에 작성합니다.
[pytest]
env =
OPENAI_API_KEY=sk-...your-api-key...
log_cli=true
log_cli_level=INFO
그런 다음 pytest로 테스트를 실행할 수 있습니다.
python -m pytest -n auto
그 후에는 기여자를 위한 문서를 확인하시기 바랍니다.
이 문서는 기여자를 위해 작성 중이므로 잠시만 기다려주세요.
🐳 Docker로 AutoRAG 실행하기
Docker를 사용하여 AutoRAG를 실행하려면 다음 단계를 따르세요:
1. Docker 이미지 빌드
docker build --target production -t autorag:prod .
이 명령은 '도커파일'에 정의된 '프로덕션' 단계만 사용하여 프로덕션 준비된 도커 이미지를 빌드합니다.
2. Docker 컨테이너 실행
다음 명령어로 컨테이너를 실행합니다:
docker run --rm -it \
-v ~/.cache/huggingface:/root/.cache/huggingface \
-v $(pwd)/sample_config:/usr/src/app/sample_config \
-v $(pwd)/projects:/usr/src/app/projects \
autoraghq/autorag:all evaluate \
--config /usr/src/app/sample_config/rag/simple/simple_openai.yaml \
--qa_data_path /usr/src/app/projects/test01/qa_validation.parquet \
--corpus_data_path /usr/src/app/projects/test01/corpus.parquet \
--project_dir /usr/src/app/projects/test01
설명
-v ~/.cache/huggingface:/root/.cache/huggingface
: 호스트의 허깅페이스 캐시를 컨테이너에 마운트하여 미리 다운로드한 모델에 접근할 수 있도록 합니다.-v $(pwd)/sample_config:/usr/src/app/sample_config
: 로컬sample_config
디렉터리를 컨테이너에 마운트합니다.-v $(pwd)/projects:/usr/src/app/projects
: 로컬projects
디렉터리를 컨테이너에 마운트합니다.autoraghq/autorag:all evaluate
:autoraghq/autorag:all
컨테이너 내에서evaluate
명령을 실행합니다.--config
,--qa_data_path
,--corpus_data_path
,--project_dir
: 구성 파일, QA 데이터 세트, 말뭉치 데이터 및 프로젝트 디렉토리의 경로를 지정합니다.
3. 사용자 정의 캐시 디렉터리를 HF_HOME
과 함께 사용
또는 컨테이너 내부의 사용자 지정 위치에 Hugging Face 캐시를 마운트하고 HF_HOME
환경 변수를 설정할 수 있습니다:
docker run --rm -it \
-v ~/.cache/huggingface:/cache/huggingface \
-v $(pwd)/sample_config:/usr/src/app/sample_config \
-v $(pwd)/projects:/usr/src/app/projects \
-e HF_HOME=/cache/huggingface \
autoraghq/autorag:all evaluate \
--config /usr/src/app/sample_config/rag/simple/simple_openai.yaml \
--qa_data_path /usr/src/app/projects/test01/qa_validation.parquet \
--corpus_data_path /usr/src/app/projects/test01/corpus.parquet \
--project_dir /usr/src/app/projects/test01
설명
-v ~/.cache/huggingface:/cache/huggingface
: 호스트의 허깅페이스 캐시를 컨테이너 내부의/cache/huggingface
에 마운트합니다.-e HF_HOME=/cache/huggingface
: 마운트된 캐시 디렉터리를 가리키도록HF_HOME
환경 변수를 설정합니다.
4. 디버깅 및 수동 액세스
디버깅 또는 테스트를 위해 컨테이너에 수동으로 액세스하려면 Bash 셸을 시작합니다:
docker run --rm -it --entrypoint /bin/bash autoraghq/autorag:all
이 명령을 사용하면 컨테이너의 파일 시스템을 탐색하고, 수동으로 명령을 실행하거나, 문제 해결을 위해 로그를 검사할 수 있습니다.
추가 참고 사항
- 호스트 시스템에 필요한 디렉터리(
sample_config
및projects
)가 있는지 확인하세요. - CI/CD 파이프라인에서 실행하는 경우 환경 변수 또는
.env
파일을 사용하여 API 키와 경로를 동적으로 관리하는 것이 좋습니다.